package org.eenie.dagger2.injector.components;

import android.app.Application;
import android.content.Context;

import org.eenie.dagger2.api.ForumApi;
import org.eenie.dagger2.entity.ArticleDao;
import org.eenie.dagger2.entity.DiscussDao;
import org.eenie.dagger2.injector.modules.ApiModule;
import org.eenie.dagger2.injector.modules.AppModule;
import org.eenie.dagger2.injector.modules.DBModule;

import javax.inject.Singleton;

import dagger.Component;

/**
 * Created by Eenie on 2017/5/3.
 * Email: eeniework@gmail.com
 * Des:
 */
@Singleton
@Component(modules = {AppModule.class, ApiModule.class, DBModule.class})
public interface AppComponent {
    Context getAppContext();

    ForumApi getForumApi();

    ArticleDao getArticleDao();

    DiscussDao getDiscussDao();

    void inject(Application application);
}
